iT邦幫忙

2022 iThome 鐵人賽

DAY 13
0
自我挑戰組

清空我的最愛之前端筆記系列 第 13

[ Day 13 ] [ JS ] 認識 Console 常用語法 (1)

  • 分享至 

  • xImage
  •  

今天是第 13 天了,今天的主題是認識 Console 用法,因為到目前為止我只有用過 console.log,一樣也是偶然看到一篇文章在介紹除了 console.log,還有其他好用的語法,所以今天就來筆記常用的語法並分享給大家囉!

Console Object

Console 物件是屬於 Window 物件的屬性之一,是在瀏覽器上 debug 用。因為是全域物件,所以可以在前面寫上 window,或是省略。window.console 或是 console

  • console.log()
  • console.warn()
  • console.error()
  • console.time()
  • console.timeEnd()
  • console.table()
  • console.assert()
  • console.clear()
  • console.count()
  • console.group()
  • console.groupCollapsed()
  • console.groupEnd()
  • console.info()
  • console.trace()

console.log()

一般用法

https://ithelp.ithome.com.tw/upload/images/20220927/20152534LcufZztpjS.png

如果我想要一次印出很多變數。

https://ithelp.ithome.com.tw/upload/images/20220927/201525346hDB2oRcmg.png

好像有點太長了,這時我們可以變成物件。

https://ithelp.ithome.com.tw/upload/images/20220927/20152534CX9ZLGiaxS.png

加上 CSS 樣式

我們也可以加上 CSS,只要在想變動的文字前面加上 %c,後面寫上樣式,兩者個加上單引號,並以逗號區隔,'%c文字', '樣式'

https://ithelp.ithome.com.tw/upload/images/20220927/20152534EqHTbv52hG.png

可以看到 name 呈現紅色字。

console.warn()

如果一次印出多個訊息,會不容易找到你想要的那個訊息。
https://ithelp.ithome.com.tw/upload/images/20220927/20152534f3UYQmQWN6.png

這時候就可以使用 console.warn(),因為它有特殊黃色標記,它常用在輸出警告訊息。

https://ithelp.ithome.com.tw/upload/images/20220927/201525349vWXUjBMuw.png

console.error()

console.error() 有著特殊紅色標記,常用在輸出錯誤訊息。

https://ithelp.ithome.com.tw/upload/images/20220927/20152534thexw3FI7o.png

還會印出函數調用的堆疊關係

https://ithelp.ithome.com.tw/upload/images/20220927/201525347fvJFpxLNo.png

在對伺服器發送 HTTP 請求,當請求發生錯誤想印出時,使用它也是一個好選擇喔!

console.time()

啟動計時器,可以測試程式碼的操作時間。
語法:console.time(label),label 為計時器的名稱。

console.timeEnd()

停止之前使用 console.time() 所啟動的計時器。
語法:console.timeEnd(label)

https://ithelp.ithome.com.tw/upload/images/20220927/20152534fz7bsFmdCX.png

也可以同時使用多個記時器,但是計時器要記得命名喔。

https://ithelp.ithome.com.tw/upload/images/20220927/2015253478zDH7EqxW.png

console.table()

讓 data 以表格的型態顯示。
語法:console.table(tabledata, tablecolumns),第二個屬性為選擇性。

一個 Array,

https://ithelp.ithome.com.tw/upload/images/20220927/20152534UW8U4RpR17.png

一個 Object,

https://ithelp.ithome.com.tw/upload/images/20220927/20152534va6OVA2D1F.png

Object 的屬性值是 Array 的話,

https://ithelp.ithome.com.tw/upload/images/20220927/20152534tPmdoElIgY.png

也可以使用在包含多個 Object 的 Array,

https://ithelp.ithome.com.tw/upload/images/20220927/20152534LMouNK0EYs.png

第二個屬性,可以指定要印出的欄位,

https://ithelp.ithome.com.tw/upload/images/20220927/20152534qlPiORMyJY.png

console.assert()

如果 expression 表達式計算為 false,就會印出訊息。
語法:console.assert(expression, message)

https://ithelp.ithome.com.tw/upload/images/20220927/20152534dBY94H7okm.png

上圖可以看出 x + y = 6,第一行 console.assert() 因為計算正確,沒有印出訊息,第二行計算錯誤,所以有印出錯誤訊息。

剩下 7 個,明天會再繼續 ~~

Demo,可以把程式碼複製到 Devtools 的 Console 裡試看看喔!

參考資料:
JavaScript in Plain English - It’s 2022, Please Don’t Just Use “console.log” Anymore
W3schools - Window Console Object

文章同步更新於 medium


上一篇
[ Day 12 ] [ JS ] Require 與 Import 的區別
下一篇
[ Day 14 ] [ JS ] 認識 Console 常用語法 (2)
系列文
清空我的最愛之前端筆記16
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言